package com.sam.designpattern.factory;

/**
 * @Author: Sam
 * @Date: 2022-07-21 09:43
 * @Description: 工厂类
 */
public class Factory {
    /**
     * 具体创建Api对象的方法
     *
     * @param condition
     * @return 创建好的Api对象
     */
    public static Api createApi(int condition) {
        //应该根据某些条件去选择究竟创建哪一个具体的实现对象
        //这些条件可以从外部传入,也可以从其他途径来获取。
        //如果只有一个实现,可以省略条件,因为没有选择的必要。
        //示意使用条件
        Api api = null;
        if (condition == 1) {
            api = new ImpA();
        } else if (condition == 2) {
            api = new ImpB();
        }
        return api;
    }

}
